home *** CD-ROM | disk | FTP | other *** search
/ The Programmer Disk / The Programmer Disk (Microforum).iso / xpro / basic3 / pro2 / albmpage.bas next >
Encoding:
BASIC Source File  |  1986-08-23  |  2.6 KB  |  66 lines

  1. 10  'ALBMPAGE.BAS -- a demonstration of how to construct a stamp album
  2. 20  '                page using BASIC and a Gemini 10x printer.
  3. 30  '                Read the file ALBMPAGE.DOC for a more detailed
  4. 40  '             explanation.
  5. 50  'Written by William F. Sharpe, Linn's Stamp News columnist.
  6. 60  '
  7. 100 TOP$       = "δτττττττττττττττ∞"
  8. 110 SIDES$     = "Θ               Ω"
  9. 120 BOTTOM$    = "φΦΦΦΦΦΦΦΦΦΦΦΦΦΦΦε"
  10. 130 ESC$       =CHR$(27)
  11. 140 TWELVELPI$ =ESC$+CHR$(51)+CHR$(12)           :CONDENSED$ =CHR$(15)
  12. 150 RS$        =ESC$+CHR$(64)                    :PAGEFEED$  =CHR$(12)
  13. 160 PAGELENGTH$=ESC$+CHR$(67)+CHR$(0)+CHR$(11)
  14. 170 RTMARGIN$  =ESC$+CHR$(81)+CHR$(135)
  15. 180 ITALICS$   =ESC$+CHR$(52)                    :ENDITALICS$=ESC$+CHR$(52)
  16. 190 UNDERLINE$=ESC$+CHR$(45)+CHR$(1)             :ENDUL$=ESC$+CHR$(45)+CHR$(0)
  17. 200 KEY OFF : CLS               'Turn off F-key listing, clear screen
  18. 210 WIDTH "LPT1:",255
  19. 220 ONEWAY$    =ESC$+CHR$(85)+CHR$(1)
  20. 230 DIM STAMP(6), CATNO$(6,6)
  21. 240 PRINT "What heading do you want for this page";
  22. 250 INPUT HEADING$
  23. 260 INPUT "How many rows of stamps are on this page(1-6)";ROW
  24. 270 FOR I = 1 TO ROW
  25. 280      PRINT "How many stamps in row no. "; I ;"(1-6)"; : INPUT STAMP(I)
  26. 290 NEXT I
  27. 300 FOR J = 1 TO ROW
  28. 310     FOR K = 1 TO STAMP(J)
  29. 320        PRINT "What's the catalog no. for row ";J;",stamp ";K;
  30. 330        INPUT CATNO$(J,K)
  31. 340     NEXT K
  32. 350 NEXT J
  33. 360 PRINT "Align paper to top of page and turn your printer on."
  34. 370 INPUT "Hit <enter> key to continue"; GO$
  35. 380 LPRINT RS$;PAGELENGTH$;TWELVELPI$;RTMARGIN$;ONEWAY$;
  36. 390 VERTSP = INT((125-ROW*17)/(ROW+1) + .5)
  37. 400 LPRINT : LPRINT
  38. 410 LH = LEN(HEADING$)
  39. 420 LPRINT SPC(40-LH/2);ITALICS$;UNDERLINE$;HEADING$;ENDITALICS$;ENDUL$
  40. 430 LPRINT CONDENSED$;
  41. 440 VERTSP = INT((125-ROW*16)/(ROW+1) + .5)
  42. 450 FOR J = 1 TO ROW
  43. 460     FOR I = 1 TO VERTSP : LPRINT : NEXT I
  44. 470     HORIZSP=INT((136-STAMP(J)*17)/(STAMP(J)+1)+.5)
  45. 480     FOR K = 1 TO STAMP(J)
  46. 490         LPRINT SPC(HORIZSP);TOP$;
  47. 500     NEXT K
  48. 510     LPRINT
  49. 520     FOR L = 1 TO 13
  50. 530         FOR LL=1 TO STAMP(J)
  51. 540             LPRINT SPC(HORIZSP);SIDES$;
  52. 550         NEXT LL
  53. 560         LPRINT
  54. 570     NEXT L
  55. 580     FOR M = 1 TO STAMP(J)
  56. 590         LPRINT SPC(HORIZSP);;BOTTOM$;
  57. 600     NEXT M
  58. 610     LPRINT : LPRINT
  59. 620     FOR N = 1 TO STAMP(J)
  60. 630         LPRINT SPC(HORIZSP);SPC((17-LEN(CATNO$(J,N)))/2);CATNO$(J,N);                   SPC((16-LEN(CATNO$(J,N)))/2);
  61. 640     NEXT N
  62. 650     LPRINT
  63. 660 NEXT J
  64. 670 LPRINT PAGEFEED$;RS$
  65. 680 KEY ON :CLS                 'Turn on F-key listing again, clear screen
  66.